home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / pc / LOGIC Apple II 5.25" Library - DOS Part 3 / DOS069.dsk / GOLF II.bas < prev    next >
BASIC Source File  |  2012-02-16  |  8KB  |  262 lines

  1. 0  SPEED= 150
  2. 1  CALL  -936: PRINT : PRINT : PRINT 
  3. 2  INVERSE : FLASH : PRINT "                 GOLF<CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G><CTRL-G>                 ": NORMAL 
  4. 3  PRINT : PRINT : PRINT 
  5. 4  PRINT "'WELCOME'TO THE APPLE COMPUTER COUNTRY   CLUB, AN EIGHTEEN HOLE LAYOUT, LOCATED  A SHORT DISTANCE FROM SCENIC DOWNTOWN...SAN DIEGO,CALIF."
  6. 6  PRINT : PRINT : PRINT " *** THIS IS A CHAMPIONSHIP COURSE ***<CTRL-G><CTRL-G><CTRL-G> "
  7. 7  PRINT : PRINT : PRINT "THE COMMENTATOR WILL EXPLAIN THE GAME AS YOU PLAY."
  8. 8  PRINT : PRINT "ENJOY YOUR GAME; SEE YOU AT THE 19TH    HOLE.<CTRL-G>.."
  9. 9  PRINT : PRINT : DIM L(10)
  10. 10 G1 = 18
  11. 20 G2 = 0
  12. 30 G3 = 0
  13. 40 A = 0
  14. 50 N = .8
  15. 60 S2 = 0
  16. 70 F = 1
  17. 80  PRINT "WHAT IS YOUR HANDICAP ";
  18. 90  INPUT H
  19. 100  IF H >30  THEN 470
  20. 110  IF H <0  THEN 470
  21. 119  PRINT : PRINT 
  22. 120  PRINT "DIFFICULTIES AT GOLF INCLUDE: "
  23. 121  PRINT : PRINT 
  24. 130  PRINT : PRINT : PRINT "0=HOOK  1=SLICE  2=POOR DISTANCE": PRINT 
  25. 131  PRINT : PRINT "4=TRAP SHOTS  5=PUTTING
  26. 139  PRINT : PRINT 
  27. 140  PRINT "WHICH ONE (ONLY ONE) IS YOUR WORST ";
  28. 150  INPUT T
  29. 155  CALL  -936
  30. 160  IF T >5  THEN 120
  31. 170 S1 = 0
  32. 210  REM 
  33. 230 L(0) = 0
  34. 240 J = 0
  35. 245 Q = 0
  36. 250 S2 = S2 +1
  37. 260 K = 0
  38. 270  IF F = 1  THEN 310
  39. 290  PRINT " YOUR ";: INVERSE : PRINT " SCORE ";: NORMAL : PRINT " ON HOLE  ";F -1;" WAS ";S1: PRINT 
  40. 291  GOTO 1750
  41. 292  IF S1 >P +2  THEN 297
  42. 293  IF S1 = P  THEN 299
  43. 294  IF S1 = P -1  THEN 301
  44. 295  IF S1 = P -2  THEN 303
  45. 296  GOTO 310
  46. 297  PRINT "KEEP YOUR HEAD DOWN<CTRL-G><CTRL-G><CTRL-G><CTRL-G>."
  47. 298  GOTO 310
  48. 299  PRINT  TAB( 9): INVERSE : PRINT "<CTRL-G><CTRL-G><CTRL-G><CTRL-G> A 'PAR'..NICE GOING ": NORMAL : PRINT 
  49. 300  GOTO 310
  50. 301  FLASH : PRINT "A BIRDIE !": NORMAL : PRINT "GREAT SHOT !"
  51. 302  GOTO 310
  52. 303  IF P = 3  THEN 306
  53. 304  FLASH : PRINT "A GREAT BIG EAGLE !"
  54. 305  NORMAL : GOTO 310
  55. 306  FLASH : PRINT "A HOLE IN ONE !!!": NORMAL : PRINT " 'FANTASTIC'"
  56. 308  NORMAL 
  57. 310  IF F = 19  THEN 1710
  58. 312 S1 = 0
  59. 315  VTAB 12
  60. 316  VTAB 24: PRINT "PRESS ANY KEY TO CONTINUE TO NEXT 'TEE'": GET A$: HOME 
  61. 320  IF S1 = 0  THEN 1590
  62. 330  IF L(0) <1  THEN 1150
  63. 340 X = 0
  64. 350  IF L(0) >5  THEN 1190
  65. 360  PRINT "SHOT WENT ";D1;" YARDS.IT'S ";D2;" YARDS FROM THE CUP."
  66. 362  PRINT "BALL IS "; INT(O);" YARDS OFF LINE....   IN  ";
  67. 380  GOSUB 400
  68. 390  GOTO 620
  69. 400  IF L(X) = 1  THEN 480
  70. 410  IF L(X) = 2  THEN 500
  71. 420  IF L(X) = 3  THEN 520
  72. 430  IF L(X) = 4  THEN 540
  73. 440  IF L(X) = 5  THEN 560
  74. 450  IF L(X) = 6  THEN 580
  75. 460  PRINT "OUT OF BOUNDS<CTRL-G><CTRL-G><CTRL-G>."
  76. 465  GOTO 1690
  77. 470  PRINT "PGA RULES HANDICAP = 0 TO 30."
  78. 472  GOTO 80
  79. 480  PRINT "FAIRWAY"
  80. 490  GOTO 1690
  81. 500  PRINT "ROUGH"
  82. 510  GOTO 1690
  83. 520  PRINT "TREES"
  84. 530  GOTO 1690
  85. 540  PRINT "ADJACENT FAIRWAY"
  86. 550  GOTO 1690
  87. 560  PRINT "TRAP"
  88. 570  GOTO 1690
  89. 580  PRINT "WATER"
  90. 590  GOTO 1690
  91. 620  IF A = 1  THEN 629
  92. 621  PRINT : PRINT : PRINT "SELECTION OF CLUBS:": PRINT : PRINT 
  93. 622  PRINT "YARDAGE DESIRED         SUGGESTED CLUBS": PRINT : PRINT 
  94. 623  PRINT "200 TO 280 YARDS             4 TO 1"
  95. 624  PRINT "100 TO 200 YARDS            19 TO 13"
  96. 625  PRINT "  0 TO 100 YARDS            29 TO 23"
  97. 626 A = 1
  98. 628  PRINT 
  99. 629  PRINT : PRINT : PRINT : INPUT "WHAT CLUB DO YOU CHOOSE ?";C
  100. 632  PRINT 
  101. 635  IF C <1  THEN 690
  102. 637  IF C >29  THEN 690
  103. 640  IF C >4  THEN 710
  104. 650  IF L(0) < = 5  THEN 740
  105. 660  IF C = 14  THEN 740
  106. 665  IF C = 23  THEN 740
  107. 670  GOTO 690
  108. 680 S1 = S1 -1
  109. 690  PRINT "THAT CLUB IS NOT IN THE BAG."
  110. 693  PRINT 
  111. 700  GOTO 620
  112. 710  IF C <12  THEN 690
  113. 720 C = C -6
  114. 730  GOTO 650
  115. 740 S1 = S1 +1
  116. 741 W = 1
  117. 742  IF C >13  THEN 960
  118. 746  IF  INT(F/3) = F/3  THEN 952
  119. 752  IF C <4  THEN 756
  120. 754  GOTO 760
  121. 756  IF L(0) = 2  THEN 862
  122. 760  IF S1 >7  THEN 867
  123. 770 D1 =  INT(((30 -H) *2.5 +187 -((30 -H) *.25 +15) *C/2) +25 * RND(1))
  124. 780 D1 =  INT(D1 *W)
  125. 800  IF T = 2  THEN 1170
  126. 830 O = ( RND(1)/.8) *(2 *H +16) * ABS( TAN(D1 *.0035))
  127. 840 D2 =  INT( SQR(0 ^2 + ABS(D -D1) ^2))
  128. 850  IF D -D1 <0  THEN 870
  129. 860  GOTO 890
  130. 862  PRINT "YOU DUBBED IT.<CTRL-G><CTRL-G><CTRL-G> "
  131. 864 D1 = 35
  132. 866  GOTO 830
  133. 867  IF D <200  THEN 1300
  134. 868  GOTO 770
  135. 870  IF D2 <20  THEN 890
  136. 880  PRINT "TOO MUCH CLUB. YOU'RE PAST THE HOLE."
  137. 890 B = D
  138. 900 D = D2
  139. 910  IF D2 >27  THEN 1020
  140. 920  IF D2 >20  THEN 1100
  141. 930  IF D2 >.5  THEN 1120
  142. 940 L(0) = 9
  143. 950  GOTO 1470
  144. 952  IF S2 +Q +(10 *(F -1)/18) <(F -1) *(72 +((H +1)/.85))/18  THEN 956
  145. 954  GOTO 752
  146. 956 Q = Q +1
  147. 957  IF S1/2 < > INT(S1/2)  THEN 1011
  148. 958  GOTO 862
  149. 960  PRINT "YOU MAY NOW GAUGE YOUR DISTANCE BY PER- CENT (1 TO 100)"
  150. 961  PRINT "PERCENT FULL SWING ";
  151. 970  INPUT W:W = W/100
  152. 972  PRINT 
  153. 980  IF W >1  THEN 680
  154. 985  IF L(0) = 5  THEN 1280
  155. 990  IF C = 14  THEN 760
  156. 1000 C = C -10
  157. 1010  GOTO 760
  158. 1011  IF D <95  THEN 862
  159. 1012  PRINT "BALL HIT TREE - BOUNCED IN ROUGH ";D -75;" YARDS FROM HOLE."
  160. 1014 D = D -75
  161. 1018  GOTO 620
  162. 1020  IF O <30  THEN 1150
  163. 1022  IF J >0  THEN 1150
  164. 1030  IF T >0  THEN 1070
  165. 1035 S9 = (S2 +1)/15
  166. 1036  IF  INT(S9) = S9  THEN 1075
  167. 1040  PRINT "YOU HOOKED-<CTRL-G><CTRL-G><CTRL-G>  ";
  168. 1050 L(0) = L(2)
  169. 1055  IF O >45  THEN 1092
  170. 1060  GOTO 320
  171. 1070 S9 = (S2 +1)/15
  172. 1071  IF  INT(S9) = S9  THEN 1040
  173. 1075  PRINT "YOU SLICED-<CTRL-G><CTRL-G><CTRL-G>  ";
  174. 1080 L(0) = L(1)
  175. 1090  GOTO 1055
  176. 1092  PRINT "BADLY."
  177. 1094  GOTO 320
  178. 1100 L(0) = 5
  179. 1110  GOTO 320
  180. 1120 L(0) = 8
  181. 1130 D2 =  INT(D2 *3)
  182. 1140  GOTO 1380
  183. 1150 L(0) = 1
  184. 1160  GOTO 320
  185. 1170 D1 =  INT(.85 *D1)
  186. 1180  GOTO 830
  187. 1190  IF L(0) >6  THEN 1260
  188. 1200  PRINT "YOUR SHOT WENT<CTRL-G><CTRL-G><CTRL-G><CTRL-G> INTO WATER."
  189. 1210 S1 = S1 +1
  190. 1220  PRINT "PENALTY STROKE ASSESED. HIT FROM        PREVIOUS LOCATION."
  191. 1230 J = J +1
  192. 1240 L(0) = 1
  193. 1242 D = B
  194. 1250  GOTO 620
  195. 1260  PRINT "YOUR SHOT WENT<CTRL-G><CTRL-G><CTRL-G><CTRL-G> OUT OF BOUNDS."
  196. 1270  GOTO 1210
  197. 1280  IF T = 3  THEN 1320
  198. 1300 D2 = 1 +(3 * INT((80/(40 -H)) * RND(1)))
  199. 1310  GOTO 1380
  200. 1314  = TRAPSHOTS5 = PUTTING
  201. 1320  IF  RND(1) >N  THEN 1360
  202. 1330 N = N *.2
  203. 1340  PRINT "SHSOT DUBBED, STILL IN TRAP."
  204. 1350  GOTO 620
  205. 1360 N = .8
  206. 1370  GOTO 1300
  207. 1380  PRINT "ON GREEN ";D2;" FEET FROM THE PIN.": PRINT 
  208. 1381  PRINT : PRINT "CHOOSE YOUR PUTT DISTANCE POTENCY......"
  209. 1382  PRINT : PRINT  TAB( 8)"NUMBER ( 1 TO 13 ) ?"
  210. 1383  PRINT 
  211. 1400  INPUT I
  212. 1410 S1 = S1 +1
  213. 1420  IF S1 +1 -P >(H *.072) +2  THEN 1470
  214. 1425  IF K >2  THEN 1470
  215. 1428 K = K +1
  216. 1430  IF T = 4  THEN 1530
  217. 1440 D2 = D2 -I *(4 +2 * RND(1)) +1.5
  218. 1450  IF D2 < -2  THEN 1560
  219. 1460  IF D2 >2  THEN 1500
  220. 1470  PRINT : PRINT : INVERSE : PRINT "<CTRL-G><CTRL-G><CTRL-G><CTRL-G> YOU HOLED IT ! ": NORMAL : PRINT : PRINT 
  221. 1472  PRINT 
  222. 1480 F = F +1
  223. 1490  GOTO 230
  224. 1500  PRINT "PUTT SHORT."
  225. 1505 D2 =  INT(D2)
  226. 1510  GOTO 1380
  227. 1530 D2 = D2 -I *(4 +1 * RND(1)) +1
  228. 1550  GOTO 1450
  229. 1560  PRINT "PASSED<CTRL-G><CTRL-G> BY CUP."
  230. 1570 D2 =  -D2
  231. 1580  GOTO 1505
  232. 1590  READ D,P,L(1),L(2)
  233. 1598  PRINT : PRINT : PRINT 
  234. 1600  PRINT "YOU ARE AT TEE OF HOLE ";F;" DISTANCE ";D;"   YARDS, PAR ";P
  235. 1605 G3 = G3 +P
  236. 1619  PRINT : PRINT 
  237. 1620  PRINT "ON YOUR RIGHT IS ";
  238. 1630 X = 1
  239. 1640  GOSUB 400
  240. 1645  PRINT : PRINT 
  241. 1650  PRINT "ON YOUR LEFT IS ";
  242. 1660 X = 2
  243. 1670  GOSUB 400
  244. 1680  GOTO 620
  245. 1690  RETURN 
  246. 1700  DATA  361,4,4,2,389,4,3,3,206,3,4,2,500,5,7,2
  247. 1702  DATA  408,4,2,4,359,4,6,4,424,4,4,2,388,4,4,4
  248. 1704  DATA  196,3,7,2,400,4,7,2,560,5,7,2,132,3,2,2
  249. 1706  DATA  357,4,4,4,294,4,2,4,475,5,2,3,375,4,4,2
  250. 1708  DATA  180,3,6,2,550,5,6,6
  251. 1710  PRINT 
  252. 1750 G2 = G2 +S1
  253. 1760  PRINT "TOTAL PAR FOR ";F -1;" HOLES IS ";G3;" YOUR TOTAL IS  ";G2: GOSUB 1800
  254. 1763  IF G1 = F -1  THEN 1766
  255. 1765  GOTO 292
  256. 1766  PRINT : PRINT : PRINT "DON'T FORGET TO TIP THE CADDY !"
  257. 1767  PRINT : PRINT "COME BACK..REAL SOON..YOU ALL !"
  258. 1770  SPEED= 255: END 
  259. 1800  PRINT : PRINT ">>>>>>>>>>>>>>>>>>>*<<<<<<<<<<<<<<<<<<<": PRINT : RETURN 
  260. 2299  PRINT  TAB( 9): INVERSE : PRINT " A 'PAR'..NICE GOING<CTRL-G><CTRL-G><CTRL-G> ": NORMAL : PRINT : PRINT 
  261. 3000  REM :THIS PROGRAM WAS REVISED BY ALEX MASSIMO,FOR THE APPLECORPS OF SAN DIEGO.
  262. 3010  REM :LINE 0 IS SET AT SPEED=150,YOU MAY CHANGE IT IF YOU SO DESIRE.